草庐IT

c++ - SomeClass **ptr; 之间的区别和 SomeClass *ptr;

全部标签

c# - 如何通过引用修改该字符串的非托管 C 库来发送字符串?

我是与非托管库交互的新手。我有一个非托管C函数,它通过函数内的引用修改字符串。我在从C#传递字符串并通过C函数修改它时遇到问题。这是C函数:__declspec(dllexport)void__stdcallTest(char*name){*name="Bar";}这是C#DLL导入代码:[DllImport(@"C:/blah/mylibrary.dll")]publicexternstaticstringTest(stringname);这是我用来调用函数的代码:strings="foo";Test(s);//Iwantstobe"Bar"aftertheaboveline我曾尝试

c# - 找到两个数组之间差异的更好方法

这个问题在这里已经有了答案:关闭11年前。PossibleDuplicate:Gettingthe“diff”betweentwoarraysinC#?有没有更好的方法来获取两个数组的差异?vara=newint[]{1,2,3};varb=newint[]{2,3,4};foreach(vardina.Except(b).Union(b.Except(a)))Console.WriteLine(d);//14

c# - 如何制作从 C# "Thread-safe"调用的 C (P/invoke) 代码

我有一些使用单个全局变量的简单C代码。显然这不是线程安全的,所以当我在C#中使用P/invoke从多个线程调用它时,事情就搞砸了。如何为每个线程单独导入此函数,或使其成为线程安全的?我尝试声明变量__declspec(thread),但这导致程序崩溃。我还尝试制作一个C++/CLI类,但它不允许成员函数是__declspec(naked),我需要(我正在使用内联汇编)。我在编写多线程C++代码方面经验不足,因此可能缺少某些内容。下面是一些示例代码:C#[DllImport("MyDll.dll",CallingConvention=CallingConvention.Cdecl)]pu

c# - Parentform 和 Owner 有什么区别

在winforms中我们有objForm.Owner和objForm.Parent。这两者有什么区别。我从表单A打开表单B作为对话框,并期望使用ParentForm属性从表单B访问表单A的公共(public)属性,但最终最终使用Owner属性代替,因为ParentForm为空!! 最佳答案 当child嵌入在父窗口中并且不能移出其边界时,窗口之间存在父子关系。示例是子控件,如TextBox和Panel。与MDI窗口模型一样,MDI子窗口嵌入在MDI父窗口中,并作为深灰色MDI客户端窗口的父窗口。拥有的窗口适用于顶层窗口并主要控制它们

C# - 显示函数之间所有依赖关系的应用程序?

是否有某种应用程序可以分析源代码并以图形方式显示函数之间的所有联系?我需要它来处理我正在处理的遗留代码-它很大,功能齐全,但写得不好......:( 最佳答案 NDepend做到这一点和更多其他事情(代码指标......) 关于C#-显示函数之间所有依赖关系的应用程序?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/3594018/

c# - 在 C# 中的窗体之间切换

当我的程序的自动生成代码启动时,它会调用Application.Run(newForm1());并启动Form1。我有另一种形式,我想切换到并同时关闭Form1。问题是,如果我在用“Form.ShowDialog()”调用另一个窗体之前在Form1中使用“this.Close()”,则程序结束。如果我将它放在ShowDialog之后,那么它会一直在后台运行,直到我关闭Form2,此时程序结束。如何在关闭当前打开的框架的同时生成Frame2的副本?编辑:我也尝试用.Show()调用Frame2,但新框架会立即关闭。 最佳答案 以下解决

c# - EDMX模型不同的代码生成项有什么本质区别?

我正在努力提升EntityFramework,这样我就不会觉得自己身处黑暗时代。我尝试(迄今为止失败了)从生成的代码中了解可用代码生成项之间的本质区别。POCO似乎将实体数据结构与将它们移入/移出数据存储的对象隔离开来。我不确定“self跟踪实体”是什么。我猜跟踪部分指的是实现所谓的“工作单元”模式,但我不是肯定的。更令人头疼的是,我想我想知道“self跟踪而不是什么?”。 最佳答案 POCO生成器POCO代表普通旧C#(或CLR)对象。POCO独立于EF。它们只是遵循一些规则的类,但如果你愿意,你可以从你自己的类型继承它们。它们也

c# - 随机整数中最可能的位

我做过这样的实验——用C和C#制作了1000万个随机数。然后统计随机整数中15位中的每一位被设置了多少次。(我选择15位是因为C只支持最大0x7fff的随机整数)。我得到的是:我有两个问题:为什么有3个最可能的位?在C情况下,位8,10,12是最有可能的。和C#位6,8,11最有可能。与C#最可能位相比,C#最可能位也似乎大部分移动了2个位置。为什么是这样?因为C#使用其他RAND_MAX常量还是什么?我的C测试代码:voidaccumulateResults(intrandom,intbitSet[15]){inti;intisBitSet;for(i=0;iC#的测试代码:stat

c# - 在 xaml 窗口和用户控件 WPF 之间传递参数

如何将参数从xaml窗口传递到WPF用户控件构造函数?我试过创建依赖属性,但没有成功。我应该尝试xaml扩展还是有其他方法吗?调用Window的xaml.cs,以及它的用户控件。publicpartialclassSomeView:UserControl{SomeViewModelvm=newSomeViewModel();publicSomeView(){this.DataContext=vm;InitializeComponent;}}上面窗口的InitializeComponent在创建用户控件的实例之前清除通过xaml设置的依赖属性的值,因此依赖属性的值始终为null。和用户控

c# - 它有什么区别 - 使用 Task.Run 运行 'async' Action 委托(delegate)(与默认 Action 委托(delegate)相比)?

我正在努力了解async/await并认为我确实了解有关用法的一些事情。但仍然不太清楚在下面的场景中实际好处是什么。查看Task.Run用法。第一种方法使用普通委托(delegate)并使用Thread.Sleep,但第二种方法使用“异步”委托(delegate)和Task.Delay。我的问题是:这对这个方法有什么影响(或没有影响)?该方法本身是一个异步方法。该代码正在创建一个单独的线程(通过Task.Run),并且该线程除了执行该委托(delegate)之外别无他法。因此,即使它在Task.Delay上产生等待,在这种情况下有什么用,因为线程无论如何都是一个孤立的线程,不用于任何其